<!DOCTYPE html>
<html>

<head>
  <meta name="viewport" content="initial-scale=1.0, user-scalable=no" />
  <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
  <title>百度地图标注</title>
  <style type="text/css">
   body {
      margin: 0;
      padding: 0;
    }

    #container {
      width: 100vw;
      height: 100vh;
      border: 1px solid #f00;
      box-sizing: border-box;
    }

    .map_circle {
      width: 70px;
      height: 70px;
      background-color: rgba(12, 181, 106, .9);
      border: 2px solid rgba(255, 255, 255, .8);
      display: flex;
      justify-content: center;
      align-items: center;
      border-radius: 50%;
      color: #fff;
      flex-direction: column;
    }
  </style>
   <script src="http://api.map.baidu.com/api?v=2.0&ak=eQzkGfNYjZulq8yab9tvbS17w8tqQ8xv"></script>
</head>
<body>
  <button id="btn" style="position: absolute; z-index: 10; color: #f00;"></button>
	<div id="container"></div>

</body>
</html>
<script>
    // 创建地图实例  
    const map = new BMap.Map("container");
    // 初始化地图，设置中心点坐标和地图级别
    map.centerAndZoom(new BMap.Point(116.2787, 40.0492), 17);
    // 准备覆盖物经纬度坐标位置
    const opts = {
      // position 其实是覆盖物左上角的坐标
      position: new BMap.Point(116.2787, 40.0492), // 指定文本标注所在的地理位置
      offset: new BMap.Size(-35, -35) // 设置文本偏移量
    };
    // 创建文本标注对象
    const label = new BMap.Label('<div class="map_circle"><span>北京</span><span>288套</span></div>')
    // 自定义文本标注样式
    label.setStyle({
      backgroundColor: 'transparent',
      border: 'none'
    });
    // 把覆盖物添加到地图中
    map.addOverlay(label)
    // 移除覆盖物
    const btn = document.querySelector('#btn')
    btn.addEventListener('click',()=>{
        // map.removeOverrlay(label)
        // removeOverrlay 清除单个类
        // clearOverlays 清除所有类
        map.clearOverlays();
    })
</script>